using Mathmall.Administration.Models;

namespace Mathmall.Administration.Service;

public interface ICategoryBrandRelationService
{
    /// <summary>
    /// 新增分类和品牌关系
    /// </summary>
    /// <param name="categoryBrandRelationVo"></param>
    /// <returns></returns>
    Task<int> AddCategoryBrandRelationAsync(CategoryBrandRelationVo categoryBrandRelationVo);

    /// <summary>
    /// 根据品牌id查询关联的全部分类
    /// </summary>
    /// <param name="brandID"></param>
    /// <returns></returns>
    Task<List<CategoryBrandRelationVo>> GetCategoryBrandRelations(int brandID);

    /// <summary>
    /// 删除品牌与分类的关联
    /// </summary>
    /// <param name="categoryBrandRelationID"></param>
    /// <returns></returns>
    Task<int> DeleteCategoryBrandRelation(int categoryBrandRelationID);

    /// <summary>
    /// 更新CategoryBrandRelation表中的品牌名称
    /// </summary>
    /// <param name="brandID"></param>
    /// <param name="brandName"></param>
    /// <returns></returns>
    Task<int> UpdateBrandName(int brandID, string brandName);

    /// <summary>
    /// 更新分类名称
    /// </summary>
    /// <param name="categoryID"></param>
    /// <param name="categoryName"></param>
    /// <returns></returns>
    Task<int> UpdateCategoryName(int categoryID, string categoryName);
}